var app = getApp();
var serverRoot = app.globalData.serverRoot;
var sliderWidth = 96; // 需要设置slider的宽度，用于计算中间位置

Page({

    /**
     * 页面的初始数据
     */
    data: {
        sourceRoot: app.globalData.sourceRoot,
        
        // 商品id
        id: '',

        // 商品数据
        goodDetail: '',

        // 是否收藏
        collect: '',

        // 商品数量
        num: "1",

        // 规格
        radioItems: [
            { name: '黑色 4G内存', value: '0', checked: true },
            { name: '白色 4G内存', value: '1' },
            { name: '黑色 8G内存', value: '2' },
            { name: '白色 8G内存', value: '3' },
        ],

        // 滑块
        // bannerUrls: [
        //     'banner1.jpg',
        //     'banner2.jpg',
        //     'banner3.jpg'
        // ],

        tabs: ["商品介绍", "规格参数", "商品评价"],
        activeIndex: 0,
        sliderOffset: 0,
        sliderLeft: 0
    },

    // 设置收藏状态
    
    setcollect(e) {
        var collect = e.currentTarget.dataset.collect
        var _this = this;
        wx.request({
            url: serverRoot + 'goods/setcollect',
            data: {
                id: _this.data.goodDetail.id,
                collect: collect
            },
            success(res) {
                if (res.data == "1") {
                    console.log("设置收藏状态:", res);
                    _this.setData({
                        collect: collect
                    });
                }
            }
        });
    },

    // 选择规格
    radioChange: function (e) {
        console.log('选择规格：', e.detail.value);

        var radioItems = this.data.radioItems;
        for (var i = 0, len = radioItems.length; i < len; ++i) {
            radioItems[i].checked = radioItems[i].value == e.detail.value;
        }

        this.setData({
            radioItems: radioItems
        });
    },

    // 减
    minusCount() {

        let num = this.data.num;
        if (num <= 1) {
            return false;
        }
        num = parseInt(num) - 1;
        this.setData({
            num: num
        });
    },

    // 加
    addCount() {

        let num = this.data.num;
        num = parseInt(num) + 1;
        this.setData({
            num: num
        });
    },

    // 加入购物车
    addCart() {
        var _this = this;
        wx.request({
            url: serverRoot + 'shopcart/addCart',
            data: {
                good_id: _this.data.id,
                num: _this.data.num,
                selected: "1",
            },
            success(res) {
                console.log(res);
                if (res.data == 1) {
                    wx.showToast({
                        title: '加入购物车成功',
                        icon: 'success',
                        duration: 3000
                    });
                }
            }
        });

    },

    // 立即购买
    buy() {
        wx.switchTab({
            url: '../../shop-cart/list/index'
        });
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function(options) {
        this.setData({
            id: options.id
        });

        var that = this;
        wx.getSystemInfo({
            success: function(res) {
                that.setData({
                    sliderLeft: (res.windowWidth / that.data.tabs.length - sliderWidth) / 2,
                    sliderOffset: res.windowWidth / that.data.tabs.length * that.data.activeIndex
                });
            }
        });
    },
    tabClick: function(e) {
        this.setData({
            sliderOffset: e.currentTarget.offsetLeft,
            activeIndex: e.currentTarget.id
        });
    },
    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function() {
        var _this = this;

        // 获取商品数据
        wx.request({
            url: serverRoot + 'goods/getGoodDetail',
            data: {
                id: _this.data.id
            },
            success(res) {
                console.log("商品数据：", res);
                _this.setData({
                    goodDetail: res.data[0],
                    collect: res.data[0].collect
                });
            }
        });
    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function() {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function() {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function() {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function() {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function() {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function() {

    }
})